home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 February: Tool Chest / Apple Developer CD Series Tool Chest February 1996 (Apple Computer)(1996).iso / Tool Chest / Development Tools & Languages / Macintosh Common Lisp Related / 2.01 sources / Library-2.01 / Interfaces / Files.lisp < prev    next >
Encoding:
Text File  |  1993-09-16  |  49.6 KB  |  1,519 lines  |  [TEXT/CCL2]

  1.  
  2. (in-package :traps)             ; 
  3. ; Created: Monday, January 14, 1991 at 4:56 PM
  4. ;     Files.p
  5. ;     Pascal Interface to the Macintosh Libraries
  6. ;         Copyright Apple Computer, Inc.    1985-1990
  7. ;         All rights reserved
  8.  
  9. ;;;;;;;;;;;;;
  10. ;
  11. ; Modification History
  12. ;
  13.  
  14. ; 04/28/93 mwp Release
  15. ; 06/02/92 bill ioTaginfo -> unsigned
  16. ; 06/01/92 bill ioVFrBlk -> unsigned (Duncan Smith)
  17. ; 05/14/92 bill Fix Moon's bug with numVersion record.
  18. ; 2/18/92 bill  Engber's fixes to _getfsqhdr, _getdrvqhdr, _getvcbqhdr
  19. ; ------------- 2.0f2
  20. ; 10/31/91 bill All hail the return of _getfsqhdr, _getdrvqhdr, & _getvcbqhdr
  21. ; 08/23/91 bill Typos in _AddDrive & _FSClose
  22. ;
  23.  
  24. ; $IFC UNDEFINED UsingIncludes
  25. ; $SETC UsingIncludes := 0
  26. ; $ENDC
  27.  
  28. ; $IFC NOT UsingIncludes
  29.  
  30. ; $ENDC
  31.  
  32. ; $IFC UNDEFINED UsingFiles
  33. ; $SETC UsingFiles := 1
  34.  
  35. ; $I+
  36. ; $SETC FilesIncludes := UsingIncludes
  37. ; $SETC UsingIncludes := 1
  38. ; $IFC UNDEFINED UsingTypes
  39.  
  40. (require-interface 'TYPES)      ; $I $$Shell(PInterfaces)Types.p
  41. ; $ENDC
  42. ; $IFC UNDEFINED UsingOSUtils
  43.  
  44. (require-interface 'OSUTILS)    ; $I $$Shell(PInterfaces)OSUtils.p
  45. ; $ENDC
  46. ; $IFC UNDEFINED UsingSegLoad
  47.  
  48. (require-interface 'SEGLOAD)    ; $I $$Shell(PInterfaces)SegLoad.p
  49. ; $ENDC
  50. ; $SETC UsingIncludes := FilesIncludes
  51.  
  52. ;  Finder Constants 
  53. (defconstant $fsAtMark 0)
  54. (defconstant $fOnDesk 1)
  55. (defconstant $fsCurPerm 0)
  56. (defconstant $fHasBundle 8192)
  57. (defconstant $fsRdPerm 1)
  58. (defconstant $fInvisible 16384)
  59. (defconstant $fTrash -3)
  60. (defconstant $fsWrPerm 2)
  61. (defconstant $fDesktop -2)
  62. (defconstant $fsRdWrPerm 3)
  63. (defconstant $fDisk 0)
  64. (defconstant $fsRdWrShPerm 4)
  65. (defconstant $fsFromStart 1)
  66. (defconstant $fsFromLEOF 2)
  67. (defconstant $fsFromMark 3)
  68. (defconstant $rdVerify 64)
  69. (defconstant $ioDirFlg 3)       ;  see IM IV-125 
  70. (defconstant $ioDirMask #x10)
  71. (defconstant $fsRtParID 1)
  72. (defconstant $fsRtDirID 2)
  73.  
  74. ;  masks for SpecBits values 
  75. (defconstant $fsSBPartialName 1)
  76. (defconstant $fsSBFullName 2)
  77. (defconstant $fsSBFlAttrib 4)
  78. (defconstant $fsSBFlFndrInfo 8)
  79. (defconstant $fsSBFlLgLen 32)
  80. (defconstant $fsSBFlPyLen 64)
  81. (defconstant $fsSBFlRLgLen 128)
  82. (defconstant $fsSBFlRPyLen 256)
  83. (defconstant $fsSBFlCrDat 512)
  84. (defconstant $fsSBFlMdDat 1024)
  85. (defconstant $fsSBFlBkDat 2048)
  86. (defconstant $fsSBFlXFndrInfo 4096)
  87. (defconstant $fsSBFlParID 8192)
  88. (defconstant $fsSBNegate 16384)
  89. (defconstant $fsSBDrUsrWds 8)
  90. (defconstant $fsSBDrNmFls 16)
  91. (defconstant $fsSBDrCrDat 512)
  92. (defconstant $fsSBDrMdDat 1024)
  93. (defconstant $fsSBDrBkDat 2048)
  94. (defconstant $fsSBDrFndrInfo 4096)
  95. (defconstant $fsSBDrParID 8192)
  96.  
  97. ;  vMAttrib (GetVolParms) bit position constants 
  98. (defconstant $bLimitFCBs 31)
  99. (defconstant $bLocalWList 30)
  100. (defconstant $bNoMiniFndr 29)
  101. (defconstant $bNoVNEdit 28)
  102. (defconstant $bNoLclSync 27)
  103. (defconstant $bTrshOffLine 26)
  104. (defconstant $bNoSwitchTo 25)
  105. (defconstant $bNoDeskItems 20)
  106. (defconstant $bNoBootBlks 19)
  107. (defconstant $bAccessCntl 18)
  108. (defconstant $bNoSysDir 17)
  109. (defconstant $bHasExtFSVol 16)
  110. (defconstant $bHasOpenDeny 15)
  111. (defconstant $bHasCopyFile 14)
  112. (defconstant $bHasMoveRename 13)
  113. (defconstant $bHasDesktopMgr 12)
  114. (defconstant $bHasShortName 11)
  115. (defconstant $bHasFolderLock 10)
  116. (defconstant $bHasPersonalAccessPrivileges 9)
  117. (defconstant $bHasUserGroupList 8)
  118. (defconstant $bHasCatSearch 7)
  119. (defconstant $bHasFileIDs 6)
  120. (defconstant $bHasBTreeMgr 5)
  121. (defconstant $bHasBlankAccessPrivileges 4)
  122.  
  123. ;  Desktop Database icon Constants 
  124. (defconstant $kLargeIcon 1)
  125. (defconstant $kLarge4BitIcon 2)
  126. (defconstant $kLarge8BitIcon 3)
  127. (defconstant $kSmallIcon 4)
  128. (defconstant $kSmall4BitIcon 5)
  129. (defconstant $kSmall8BitIcon 6)
  130.  
  131. (defconstant $kLargeIconSize 256)
  132. (defconstant $kLarge4BitIconSize 512)
  133. (defconstant $kLarge8BitIconSize 1024)
  134. (defconstant $kSmallIconSize 64)
  135. (defconstant $kSmall4BitIconSize 128)
  136. (defconstant $kSmall8BitIconSize 256)
  137.  
  138. ;  foreign privilege model identifiers 
  139. (defconstant $fsUnixPriv 1)
  140.  
  141. ;  Version Release Stage Codes 
  142. (defconstant $developStage #x20)
  143. (defconstant $alphaStage #x40)
  144. (defconstant $betaStage #x60)
  145. (defconstant $finalStage #x80)
  146.  
  147. ;  Authentication Constants 
  148. (defconstant $kNoUserAuthentication 1)
  149. (defconstant $kPassword 2)
  150. (defconstant $kEncryptPassword 3)
  151. (defconstant $kTwoWayEncryptPassword 6)
  152.  
  153. (def-mactype :cinfotype (find-mactype :unsigned-byte))
  154. (defconstant $hFileInfo 0)
  155. (defconstant $dirInfo 1)
  156.  
  157. (defrecord FXInfo 
  158.    (fdIconID :signed-integer)   ;  Icon ID
  159.    (fdUnused (:array :signed-integer 3)); unused but reserved 6 bytes
  160.    (fdScript :signed-byte)      ;  Script flag and number 
  161.    (fdXFlags :signed-byte)
  162.    (fdComment :signed-integer)  ;  Comment ID
  163.    (fdPutAway :signed-long)     ;  Home Dir ID
  164.    )
  165.  
  166. (defrecord DInfo 
  167.    (frRect :rect)               ; folder rect
  168.    (frFlags :signed-integer)    ; Flags
  169.    (frLocation :point)          ; folder location
  170.    (frView :signed-integer)     ; folder view
  171.    )
  172.  
  173. (defrecord DXInfo 
  174.    (frScroll :point)            ; scroll position
  175.    (frOpenChain :signed-long)   ; DirID chain of open folders
  176.    (frScript :signed-byte)      ;  Script flag and number 
  177.    (frXFlags :signed-byte)
  178.    (frComment :signed-integer)  ; comment
  179.    (frPutAway :signed-long)     ; DirID
  180.    )
  181.  
  182. (defrecord GetVolParmsInfoBuffer 
  183.    (vMVersion :signed-integer)  ; version number
  184.    (vMAttrib :signed-long)      ; bit vector of attributes (see vMAttrib constants)
  185.    (vMLocalHand :handle)        ; handle to private data
  186.    (vMServerAdr :signed-long)   ; AppleTalk server address or zero
  187.    (vMVolumeGrade :signed-long) ; approx. speed rating or zero if unrated
  188.    (vMForeignPrivID :signed-integer); foreign privilege model supported or zero if none
  189.    )
  190.  
  191. (def-mactype :cinfopbptr (find-mactype :pointer))
  192. (defrecord CInfoPBRec 
  193.    (qLink (:pointer :qelem))
  194.    (qType :signed-integer)
  195.    (ioTrap :signed-integer)
  196.    (ioCmdAddr :pointer)
  197.    (ioCompletion :pointer)
  198.    (ioResult :signed-integer)
  199.    (ioNamePtr (:pointer (:string 255)))
  200.    (ioVRefNum :signed-integer)
  201.    (ioFRefNum :signed-integer)
  202.    (ioFVersNum :signed-byte)
  203.    (filler1 :signed-byte)
  204.    (ioFDirIndex :signed-integer)
  205.    (ioFlAttrib :signed-byte)
  206.    (filler2 :signed-byte)
  207.    (:variant 
  208.  
  209.       ((ioFlFndrInfo :finfo)
  210.       (ioDirID :signed-long)
  211.       (ioFlStBlk :signed-integer)
  212.       (ioFlLgLen :signed-long)
  213.       (ioFlPyLen :signed-long)
  214.       (ioFlRStBlk :signed-integer)
  215.       (ioFlRLgLen :signed-long)
  216.       (ioFlRPyLen :signed-long)
  217.       (ioFlCrDat :signed-long)
  218.       (ioFlMdDat :signed-long)
  219.       (ioFlBkDat :signed-long)
  220.       (ioFlXFndrInfo :fxinfo)
  221.       (ioFlParID :signed-long)
  222.       (ioFlClpSiz :signed-long))
  223.  
  224.       ((ioDrUsrWds :dinfo)
  225.       (ioDrDirID :signed-long)
  226.       (ioDrNmFls :signed-integer)
  227.       (filler3 (:array :signed-integer 9))
  228.       (ioDrCrDat :signed-long)
  229.       (ioDrMdDat :signed-long)
  230.       (ioDrBkDat :signed-long)
  231.       (ioDrFndrInfo :dxinfo)
  232.       (ioDrParID :signed-long))
  233.       ))
  234.  
  235. (defrecord CatPositionRec 
  236.    (initialize :signed-long)
  237.    (priv (:array :signed-integer 6))
  238.    )
  239.  
  240. (def-mactype :fsspecptr (find-mactype :pointer))
  241. (def-mactype :fsspechandle (find-mactype :handle))
  242. (defrecord (FSSpec :handle) 
  243.    (vRefNum :signed-integer)
  244.    (parID :signed-long)
  245.    (name (:string 63))
  246.    )
  247.  
  248. (def-mactype :fsspecarrayptr (find-mactype :pointer))
  249. (def-mactype :fsspecarrayhandle (find-mactype :handle))
  250.  
  251. (DEFRECORD (FSSPECARRAY :HANDLE) (ARRAY (ARRAY :FSSPEC 1)))
  252.  
  253. ;     The following are structures to be filled out with the _GetVolMountInfo call
  254. ;     and passed back into the _VolumeMount call for external file system mounts.
  255.  
  256. (def-mactype :volumetype (find-mactype :ostype))
  257.  
  258. (defconstant $AppleShareMediaType :|afpm|);  the signature for AppleShare 
  259.  
  260. (def-mactype :volmountinfoptr (find-mactype :pointer))
  261. (defrecord VolMountInfoHeader 
  262.    (length :signed-integer)     ;  length of location data (including self) 
  263.    (media :ostype)              ;  type of media. Variable length data follows 
  264.    )
  265.  
  266. (def-mactype :afpvolmountinfoptr (find-mactype :pointer))
  267. (defrecord AFPVolMountInfo 
  268.    (length :signed-integer)     ;  length of location data (including self) 
  269.    (media :ostype)              ;  type of media 
  270.    (flags :signed-integer)      ;  bits for no messages, no reconnect 
  271.    (nbpInterval :signed-byte)   ;  NBP Interval parameter (IM2, p.322) 
  272.    (nbpCount :signed-byte)      ;  NBP Interval parameter (IM2, p.322) 
  273.    (uamType :signed-integer)    ;  User Authentication Method 
  274.    (zoneNameOffset :signed-integer);  short positive offset from start of struct to Zone Name 
  275.    (serverNameOffset :signed-integer);  offset to pascal Server Name string 
  276.    (volNameOffset :signed-integer);  offset to pascal Volume Name string 
  277.    (userNameOffset :signed-integer);  offset to pascal User Name string 
  278.    (userPasswordOffset :signed-integer);  offset to pascal User Password string 
  279.    (volPasswordOffset :signed-integer);  offset to pascal Volume Password string 
  280.    (AFPData (:array :character 144));  variable length data may follow 
  281.    )
  282.  
  283. (def-mactype :dtpbptr (find-mactype :pointer))
  284. (defrecord DTPBRec 
  285.    (qLink (:pointer :qelem))
  286.    (qType :signed-integer)
  287.    (ioTrap :signed-integer)
  288.    (ioCmdAddr :pointer)
  289.    (ioCompletion :pointer)
  290.    (ioResult :signed-integer)
  291.    (ioNamePtr (:pointer (:string 255)))
  292.    (ioVRefNum :signed-integer)
  293.    (ioDTRefNum :signed-integer)
  294.    (ioIndex :signed-integer)
  295.    (ioTagInfo :unsigned-long)
  296.    (ioDTBuffer :pointer)
  297.    (ioDTReqCount :signed-long)
  298.    (ioDTActCount :signed-long)
  299.    (filler1 :signed-byte)
  300.    (ioIconType :signed-byte)
  301.    (filler2 :signed-integer)
  302.    (ioDirID :signed-long)
  303.    (ioFileCreator :ostype)
  304.    (ioFileType :ostype)
  305.    (ioFiller3 :signed-long)
  306.    (ioDTLgLen :signed-long)
  307.    (ioDTPyLen :signed-long)
  308.    (ioFiller4 (:array :signed-integer 14))
  309.    (ioAPPLParID :signed-long)
  310.    )
  311.  
  312. (def-mactype :hparmblkptr (find-mactype :pointer))
  313. (defrecord HParamBlockRec 
  314.    (qLink (:pointer :qelem))
  315.    (qType :signed-integer)
  316.    (ioTrap :signed-integer)
  317.    (ioCmdAddr :pointer)
  318.    (ioCompletion :pointer)
  319.    (ioResult :signed-integer)
  320.    (ioNamePtr (:pointer (:string 255)))
  321.    (ioVRefNum :signed-integer)
  322.    (:variant 
  323.  
  324.       ((ioRefNum :signed-integer)
  325.       (ioVersNum :signed-byte)
  326.       (ioPermssn :signed-byte)
  327.       (ioMisc :pointer)
  328.       (ioBuffer :pointer)
  329.       (ioReqCount :signed-long) ; size of buffer area
  330.       (ioActCount :signed-long) ; length of vol parms data
  331.       (ioPosMode :signed-integer)
  332.       (ioPosOffset :signed-long))
  333.  
  334.       ((ioFRefNum :signed-integer)
  335.       (ioFVersNum :signed-byte)
  336.       (filler1 :signed-byte)
  337.       (ioFDirIndex :signed-integer)
  338.       (ioFlAttrib :signed-byte)
  339.       (ioFlVersNum :signed-byte)
  340.       (ioFlFndrInfo :finfo)
  341.       (ioDirID :signed-long)
  342.       (ioFlStBlk :signed-integer)
  343.       (ioFlLgLen :signed-long)
  344.       (ioFlPyLen :signed-long)
  345.       (ioFlRStBlk :signed-integer)
  346.       (ioFlRLgLen :signed-long)
  347.       (ioFlRPyLen :signed-long)
  348.       (ioFlCrDat :signed-long)
  349.       (ioFlMdDat :signed-long))
  350.  
  351.       ((filler2 :signed-long)
  352.       (ioVolIndex :signed-integer)
  353.       (ioVCrDate :signed-long)
  354.       (ioVLsMod :signed-long)
  355.       (ioVAtrb :signed-integer)
  356.       (ioVNmFls :signed-integer)
  357.       (ioVBitMap :signed-integer)
  358.       (ioAllocPtr :signed-integer)
  359.       (ioVNmAlBlks :signed-integer)
  360.       (ioVAlBlkSiz :signed-long)
  361.       (ioVClpSiz :signed-long)
  362.       (ioAlBlSt :signed-integer)
  363.       (ioVNxtCNID :signed-long)
  364.       (ioVFrBlk :unsigned-integer)
  365.       (ioVSigWord :signed-integer)
  366.       (ioVDrvInfo :signed-integer)
  367.       (ioVDRefNum :signed-integer)
  368.       (ioVFSID :signed-integer)
  369.       (ioVBkUp :signed-long)
  370.       (ioVSeqNum :signed-integer)
  371.       (ioVWrCnt :signed-long)
  372.       (ioVFilCnt :signed-long)
  373.       (ioVDirCnt :signed-long)
  374.       (ioVFndrInfo (:array :signed-long 8)))
  375.  
  376.       ((filler3 :signed-integer)
  377.       (ioDenyModes :signed-integer); access rights data
  378.       (filler4 :signed-integer)
  379.       (filler5 :signed-byte)
  380.       (ioACUser :signed-byte)   ; access rights for directory only
  381.       (filler6 :signed-long)
  382.       (ioACOwnerID :signed-long); owner ID
  383.       (ioACGroupID :signed-long); group ID
  384.       (ioACAccess :signed-long)); access rights
  385.  
  386.       ((filler7 :signed-integer)
  387.       (ioObjType :signed-integer); function code
  388.       (ioObjNamePtr :pointer)   ; ptr to returned creator/group name
  389.       (ioObjID :signed-long))   ; creator/group ID
  390.  
  391.       ((ioDstVRefNum :signed-integer); destination vol identifier
  392.       (filler8 :signed-integer)
  393.       (ioNewName :pointer)      ; ptr to destination pathname
  394.       (ioCopyName :pointer)     ; ptr to optional name
  395.       (ioNewDirID :signed-long)); destination directory ID
  396.  
  397.       ((filler9 :signed-integer)
  398.       (ioWDIndex :signed-integer)
  399.       (ioWDProcID :signed-long)
  400.       (ioWDVRefNum :signed-integer)
  401.       (filler10 :signed-integer)
  402.       (filler11 :signed-long)
  403.       (filler12 :signed-long)
  404.       (filler13 :signed-long)
  405.       (ioWDDirID :signed-long))
  406.  
  407.       ((filler14 :signed-long)
  408.       (ioDestNamePtr (:pointer (:string 255)))
  409.       (filler15 :signed-long)
  410.       (ioDestDirID :signed-long)
  411.       (filler16 :signed-long)
  412.       (filler17 :signed-long)
  413.       (ioSrcDirID :signed-long)
  414.       (filler18 :signed-integer)
  415.       (ioFileID :signed-long))
  416.  
  417.       ((ioMatchPtr (:pointer :fsspecarray)); match array
  418.       (ioReqMatchCount :signed-long); maximum allowable matches
  419.       (ioActMatchCount :signed-long); actual match count
  420.       (ioSearchBits :signed-long); search criteria selector
  421.       (ioSearchInfo1 (:pointer :cinfopbrec)); search values and range lower bounds
  422.       (ioSearchInfo2 (:pointer :cinfopbrec)); search values and range upper bounds
  423.       (ioSearchTime :signed-long); length of time to run the search
  424.       (ioCatPosition :catpositionrec); current position in the catalog
  425.       (ioOptBuffer :pointer)    ; optional performance enhancement buffer
  426.       (ioOptBufSize :signed-long)); length of buffer pointed to by ioOptBuffer
  427.  
  428.       ((filler21 :signed-long)
  429.       (filler22 :signed-long)
  430.       (ioForeignPrivBuffer :pointer)
  431.       (ioForeignPrivReqCount :signed-long)
  432.       (ioForeignPrivActCount :signed-long)
  433.       (filler23 :signed-long)
  434.       (ioForeignPrivDirID :signed-long)
  435.       (ioForeignPrivInfo1 :signed-long)
  436.       (ioForeignPrivInfo2 :signed-long)
  437.       (ioForeignPrivInfo3 :signed-long)
  438.       (ioForeignPrivInfo4 :signed-long))
  439.       ))
  440.  
  441. (def-mactype :cmovepbptr (find-mactype :pointer))
  442. (defrecord CMovePBRec 
  443.    (qLink (:pointer :qelem))
  444.    (qType :signed-integer)
  445.    (ioTrap :signed-integer)
  446.    (ioCmdAddr :pointer)
  447.    (ioCompletion :pointer)
  448.    (ioResult :signed-integer)
  449.    (ioNamePtr (:pointer (:string 255)))
  450.    (ioVRefNum :signed-integer)
  451.    (filler1 :signed-long)
  452.    (ioNewName (:pointer (:string 255)))
  453.    (filler2 :signed-long)
  454.    (ioNewDirID :signed-long)
  455.    (filler3 (:array :signed-long 2))
  456.    (ioDirID :signed-long)
  457.    )
  458.  
  459. (def-mactype :wdpbptr (find-mactype :pointer))
  460. (defrecord WDPBRec 
  461.    (qLink (:pointer :qelem))
  462.    (qType :signed-integer)
  463.    (ioTrap :signed-integer)
  464.    (ioCmdAddr :pointer)
  465.    (ioCompletion :pointer)
  466.    (ioResult :signed-integer)
  467.    (ioNamePtr (:pointer (:string 255)))
  468.    (ioVRefNum :signed-integer)
  469.    (filler1 :signed-integer)
  470.    (ioWDIndex :signed-integer)
  471.    (ioWDProcID :signed-long)
  472.    (ioWDVRefNum :signed-integer)
  473.    (filler2 (:array :signed-integer 7))
  474.    (ioWDDirID :signed-long)
  475.    )
  476.  
  477. (def-mactype :fcbpbptr (find-mactype :pointer))
  478. (defrecord FCBPBRec 
  479.    (qLink (:pointer :qelem))
  480.    (qType :signed-integer)
  481.    (ioTrap :signed-integer)
  482.    (ioCmdAddr :pointer)
  483.    (ioCompletion :pointer)
  484.    (ioResult :signed-integer)
  485.    (ioNamePtr (:pointer (:string 255)))
  486.    (ioVRefNum :signed-integer)
  487.    (ioRefNum :signed-integer)
  488.    (filler :signed-integer)
  489.    (ioFCBIndx :signed-integer)
  490.    (filler1 :signed-integer)
  491.    (ioFCBFlNm :signed-long)
  492.    (ioFCBFlags :signed-integer)
  493.    (ioFCBStBlk :signed-integer)
  494.    (ioFCBEOF :signed-long)
  495.    (ioFCBPLen :signed-long)
  496.    (ioFCBCrPs :signed-long)
  497.    (ioFCBVRefNum :signed-integer)
  498.    (ioFCBClpSiz :signed-long)
  499.    (ioFCBParID :signed-long)
  500.    )
  501.  
  502. ; Numeric version part of 'vers' resource
  503. (defrecord NumVersion 
  504.    (:variant 
  505.  
  506.       ((majorRev :signed-byte)  ; 1st part of version number in BCD
  507.        (minorAndBugFixRev :unsigned-byte)       ; we don't support nibbles (yet).
  508. ;      (minorRev :unsigned-byte) ; 2nd part is 1 nibble in BCD
  509. ;      (bugFixRev :unsigned-byte); 3rd part is 1 nibble in BCD
  510.       (stage :signed-byte)      ; stage code: dev, alpha, beta, final
  511.       (nonRelRev :signed-byte)) ; revision level of non-released version
  512.  
  513.       ((version :signed-long))  ; to use all 4 fields at one time
  514.       ))
  515.  
  516. ; 'vers' resource format
  517. (def-mactype :versrecptr (find-mactype :pointer))
  518. (def-mactype :versrechndl (find-mactype :handle))
  519. (defrecord (VersRec :handle) 
  520.    (numericVersion :numversion) ; encoded version number
  521.    (countryCode :signed-integer); country code from intl utilities
  522.    (shortVersion (:string 255)) ; version number string - worst case
  523.    (reserved (:string 255))     ; longMessage string packed after shortVersion
  524.    )
  525.  
  526.  
  527. (deftrap _pbopen ((paramblock (:pointer :paramblockrec)))
  528.    (:d0 :signed-integer)
  529.    (:register-trap #xA000 :a0 paramblock))
  530.  
  531. (deftrap _open ((paramblock (:pointer :paramblockrec)))
  532.    (:d0 :signed-integer)
  533.    (:register-trap #xA000 :a0 paramblock))
  534.  
  535. (deftrap _pbclose ((paramblock (:pointer :paramblockrec)))
  536.    (:d0 :signed-integer)
  537.    (:register-trap #xA001 :a0 paramblock))
  538.  
  539. (deftrap _close ((paramblock (:pointer :paramblockrec)))
  540.    (:d0 :signed-integer)
  541.    (:register-trap #xA001 :a0 paramblock))
  542.  
  543. (deftrap _pbread ((paramblock (:pointer :paramblockrec)))
  544.    (:d0 :signed-integer)
  545.    (:register-trap #xA002 :a0 paramblock))
  546.  
  547. (deftrap _read ((paramblock (:pointer :paramblockrec)))
  548.    (:d0 :signed-integer)
  549.    (:register-trap #xA002 :a0 paramblock))
  550.  
  551. (deftrap _pbwrite ((paramblock (:pointer :paramblockrec)))
  552.    (:d0 :signed-integer)
  553.    (:register-trap #xA003 :a0 paramblock))
  554.  
  555. (deftrap _write ((paramblock (:pointer :paramblockrec)))
  556.    (:d0 :signed-integer)
  557.    (:register-trap #xA003 :a0 paramblock))
  558.  
  559. (deftrap _pbgetvinfo ((paramblock (:pointer :paramblockrec)))
  560.    (:d0 :signed-integer)
  561.    (:register-trap #xA007 :a0 paramblock))
  562.  
  563. (deftrap _getvinfo ((paramblock (:pointer :paramblockrec)))
  564.    (:d0 :signed-integer)
  565.    (:register-trap #xA007 :a0 paramblock))
  566.  
  567. (deftrap _pbgetvol ((paramblock (:pointer :paramblockrec)))
  568.    (:d0 :signed-integer)
  569.    (:register-trap #xA014 :a0 paramblock))
  570.  
  571. (deftrap _getvol ((paramblock (:pointer :paramblockrec)))
  572.    (:d0 :signed-integer)
  573.    (:register-trap #xA014 :a0 paramblock))
  574.  
  575. (deftrap _pbsetvol ((paramblock (:pointer :paramblockrec)))
  576.    (:d0 :signed-integer)
  577.    (:register-trap #xA015 :a0 paramblock))
  578.  
  579. (deftrap _setvol ((paramblock (:pointer :paramblockrec)))
  580.    (:d0 :signed-integer)
  581.    (:register-trap #xA015 :a0 paramblock))
  582.  
  583. (deftrap _pbflushvol ((paramblock (:pointer :paramblockrec)))
  584.    (:d0 :signed-integer)
  585.    (:register-trap #xA013 :a0 paramblock))
  586.  
  587. (deftrap _flushvol ((paramblock (:pointer :paramblockrec)))
  588.    (:d0 :signed-integer)
  589.    (:register-trap #xA013 :a0 paramblock))
  590.  
  591. (deftrap _pbcreate ((paramblock (:pointer :paramblockrec)))
  592.    (:d0 :signed-integer)
  593.    (:register-trap #xA008 :a0 paramblock))
  594.  
  595. (deftrap _create ((paramblock (:pointer :paramblockrec)))
  596.    (:d0 :signed-integer)
  597.    (:register-trap #xA008 :a0 paramblock))
  598.  
  599. (deftrap _pbdelete ((paramblock (:pointer :paramblockrec)))
  600.    (:d0 :signed-integer)
  601.    (:register-trap #xA009 :a0 paramblock))
  602.  
  603. (deftrap _delete ((paramblock (:pointer :paramblockrec)))
  604.    (:d0 :signed-integer)
  605.    (:register-trap #xA009 :a0 paramblock))
  606.  
  607. (deftrap _pbopendf ((paramblock (:pointer :paramblockrec)))
  608.    (:d0 :signed-integer)
  609.    (:register-trap #xA060 :a0 paramblock :d0 26))
  610.  
  611. (deftrap _opendf ((paramblock (:pointer :paramblockrec)))
  612.    (:d0 :signed-integer)
  613.    (:register-trap #xA060 :a0 paramblock :d0 26))
  614.  
  615. (deftrap _pbopenrf ((paramblock (:pointer :paramblockrec)))
  616.    (:d0 :signed-integer)
  617.    (:register-trap #xA00A :a0 paramblock))
  618.  
  619. (deftrap _openrf ((paramblock (:pointer :paramblockrec)))
  620.    (:d0 :signed-integer)
  621.    (:register-trap #xA00A :a0 paramblock))
  622.  
  623. (deftrap _pbrename ((paramblock (:pointer :paramblockrec)))
  624.    (:d0 :signed-integer)
  625.    (:register-trap #xA00B :a0 paramblock))
  626.  
  627. (deftrap _rename ((paramblock (:pointer :paramblockrec)))
  628.    (:d0 :signed-integer)
  629.    (:register-trap #xA00B :a0 paramblock))
  630.  
  631. (deftrap _pbgetfinfo ((paramblock (:pointer :paramblockrec)))
  632.    (:d0 :signed-integer)
  633.    (:register-trap #xA00C :a0 paramblock))
  634.  
  635. (deftrap _getfinfo ((paramblock (:pointer :paramblockrec)))
  636.    (:d0 :signed-integer)
  637.    (:register-trap #xA00C :a0 paramblock))
  638.  
  639. (deftrap _pbsetfinfo ((paramblock (:pointer :paramblockrec)))
  640.    (:d0 :signed-integer)
  641.    (:register-trap #xA00D :a0 paramblock))
  642.  
  643. (deftrap _setfinfo ((paramblock (:pointer :paramblockrec)))
  644.    (:d0 :signed-integer)
  645.    (:register-trap #xA00D :a0 paramblock))
  646.  
  647. (deftrap _pbsetflock ((paramblock (:pointer :paramblockrec)))
  648.    (:d0 :signed-integer)
  649.    (:register-trap #xA041 :a0 paramblock))
  650.  
  651. (deftrap _setflock ((paramblock (:pointer :paramblockrec)))
  652.    (:d0 :signed-integer)
  653.    (:register-trap #xA041 :a0 paramblock))
  654.  
  655. (deftrap _pbrstflock ((paramblock (:pointer :paramblockrec)))
  656.    (:d0 :signed-integer)
  657.    (:register-trap #xA042 :a0 paramblock))
  658.  
  659. (deftrap _rstflock ((paramblock (:pointer :paramblockrec)))
  660.    (:d0 :signed-integer)
  661.    (:register-trap #xA042 :a0 paramblock))
  662.  
  663. (deftrap _pbsetfvers ((paramblock (:pointer :paramblockrec)))
  664.    (:d0 :signed-integer)
  665.    (:register-trap #xA043 :a0 paramblock))
  666.  
  667. (deftrap _setfvers ((paramblock (:pointer :paramblockrec)))
  668.    (:d0 :signed-integer)
  669.    (:register-trap #xA043 :a0 paramblock))
  670.  
  671. (deftrap _pballocate ((paramblock (:pointer :paramblockrec)))
  672.    (:d0 :signed-integer)
  673.    (:register-trap #xA010 :a0 paramblock))
  674.  
  675. (deftrap _allocate ((paramblock (:pointer :paramblockrec)))
  676.    (:d0 :signed-integer)
  677.    (:register-trap #xA010 :a0 paramblock))
  678.  
  679. (deftrap _pbgeteof ((paramblock (:pointer :paramblockrec)))
  680.    (:d0 :signed-integer)
  681.    (:register-trap #xA011 :a0 paramblock))
  682.  
  683. (deftrap _geteof ((paramblock (:pointer :paramblockrec)))
  684.    (:d0 :signed-integer)
  685.    (:register-trap #xA011 :a0 paramblock))
  686.  
  687. (deftrap _pbseteof ((paramblock (:pointer :paramblockrec)))
  688.    (:d0 :signed-integer)
  689.    (:register-trap #xA012 :a0 paramblock))
  690.  
  691. (deftrap _seteof ((paramblock (:pointer :paramblockrec)))
  692.    (:d0 :signed-integer)
  693.    (:register-trap #xA012 :a0 paramblock))
  694.  
  695. (deftrap _pbgetfpos ((paramblock (:pointer :paramblockrec)))
  696.    (:d0 :signed-integer)
  697.    (:register-trap #xA018 :a0 paramblock))
  698.  
  699. (deftrap _getfpos ((paramblock (:pointer :paramblockrec)))
  700.    (:d0 :signed-integer)
  701.    (:register-trap #xA018 :a0 paramblock))
  702.  
  703. (deftrap _pbsetfpos ((paramblock (:pointer :paramblockrec)))
  704.    (:d0 :signed-integer)
  705.    (:register-trap #xA044 :a0 paramblock))
  706.  
  707. (deftrap _setfpos ((paramblock (:pointer :paramblockrec)))
  708.    (:d0 :signed-integer)
  709.    (:register-trap #xA044 :a0 paramblock))
  710.  
  711. (deftrap _pbflushfile ((paramblock (:pointer :paramblockrec)))
  712.    (:d0 :signed-integer)
  713.    (:register-trap #xA045 :a0 paramblock))
  714.  
  715. (deftrap _flushfile ((paramblock (:pointer :paramblockrec)))
  716.    (:d0 :signed-integer)
  717.    (:register-trap #xA045 :a0 paramblock))
  718.  
  719. (deftrap _pbmountvol ((paramblock (:pointer :paramblockrec)))
  720.    (:d0 :signed-integer)
  721.    (:register-trap #xA00F :a0 paramblock))
  722.  
  723. (deftrap _mountvol ((paramblock (:pointer :paramblockrec)))
  724.    (:d0 :signed-integer)
  725.    (:register-trap #xA00F :a0 paramblock))
  726.  
  727. (deftrap _pbunmountvol ((paramblock (:pointer :paramblockrec)))
  728.    (:d0 :signed-integer)
  729.    (:register-trap #xA00E :a0 paramblock))
  730.  
  731. (deftrap _unmountvol ((paramblock (:pointer :paramblockrec)))
  732.    (:d0 :signed-integer)
  733.    (:register-trap #xA00E :a0 paramblock))
  734.  
  735. (deftrap _pbeject ((paramblock (:pointer :paramblockrec)))
  736.    (:d0 :signed-integer)
  737.    (:register-trap #xA017 :a0 paramblock))
  738.  
  739. (deftrap _eject ((paramblock (:pointer :paramblockrec)))
  740.    (:d0 :signed-integer)
  741.    (:register-trap #xA017 :a0 paramblock))
  742.  
  743. (deftrap _pboffline ((paramblock (:pointer :paramblockrec)))
  744.    (:d0 :signed-integer)
  745.    (:register-trap #xA035 :a0 paramblock))
  746.  
  747. (deftrap _offline ((paramblock (:pointer :paramblockrec)))
  748.    (:d0 :signed-integer)
  749.    (:register-trap #xA035 :a0 paramblock))
  750.  
  751. (deftrap _pbcatsearch ((paramblock (:pointer :hparamblockrec)))
  752.    (:d0 :signed-integer)
  753.    (:register-trap #xA260 :a0 paramblock :d0 24))
  754.  
  755. (deftrap _catsearch ((paramblock (:pointer :hparamblockrec)))
  756.    (:d0 :signed-integer)
  757.    (:register-trap #xA260 :a0 paramblock :d0 24))
  758.  
  759. (deftrap _adddrive ((drvrrefnum :signed-integer) (drvnum :signed-integer) (qel (:pointer :drvqel)))
  760.    (:d0 :signed-integer)
  761.    (:register-trap #xA04E :d0 (logior (ash 16 drvnum) (logand #xffff drvrrefnum)) :a0 qel))
  762.  
  763.  
  764.  
  765.  
  766.  
  767. #| No 411 description
  768. (deftrap _openrf ((filename (:string 255)) (vrefnum :signed-integer) (refnum (:pointer :signed-integer)))
  769.    (nil :signed-integer)
  770.    (:register-trap #xA00A))
  771. |#
  772. #| Can't match 411 description 
  773.    Entry:nil 
  774.    Exit:nil
  775. (deftrap _rename ((oldname (:string 255)) (vrefnum :signed-integer) (newname (:string 255)))
  776.    (nil :signed-integer)
  777.    (:register-trap #xA00B :no-match oldname :no-match vrefnum :no-match newname))
  778. |#
  779. #| Not in ROM
  780. (deftrap _setfinfo ((filename (:string 255)) (vrefnum :signed-integer) (fndrinfo :finfo))
  781.    (:stack :signed-integer)
  782.    (:stack-trap #x0))
  783. |#
  784. #| Not in ROM
  785. (deftrap _setflock ((filename (:string 255)) (vrefnum :signed-integer))
  786.    (:stack :signed-integer)
  787.    (:stack-trap #x0))
  788. |#
  789. #| Not in ROM
  790. (deftrap _rstflock ((filename (:string 255)) (vrefnum :signed-integer))
  791.    (:stack :signed-integer)
  792.    (:stack-trap #x0))
  793. |#
  794. #| No 411 description
  795. (deftrap _allocate ((refnum :signed-integer) (count (:pointer :signed-long)))
  796.    (nil :signed-integer)
  797.    (:register-trap #xA010))
  798. |#
  799. #| Can't match 411 description 
  800.    Entry:nil 
  801.    Exit:nil
  802. (deftrap _geteof ((refnum :signed-integer) (logeof (:pointer :signed-long)))
  803.    (nil :signed-integer)
  804.    (:register-trap #xA011 :no-match refnum :no-match logeof))
  805. |#
  806. #| Can't match 411 description 
  807.    Entry:nil 
  808.    Exit:nil
  809. (deftrap _seteof ((refnum :signed-integer) (logeof :signed-long))
  810.    (nil :signed-integer)
  811.    (:register-trap #xA012 :no-match refnum :no-match logeof))
  812. |#
  813. #| Can't match 411 description 
  814.    Entry:nil 
  815.    Exit:nil
  816. (deftrap _getfpos ((refnum :signed-integer) (filepos (:pointer :signed-long)))
  817.    (nil :signed-integer)
  818.    (:register-trap #xA018 :no-match refnum :no-match filepos))
  819. |#
  820. #| Can't match 411 description 
  821.    Entry:nil 
  822.    Exit:nil
  823. (deftrap _setfpos ((refnum :signed-integer) (posmode :signed-integer) (posoff :signed-long))
  824.    (nil :signed-integer)
  825.    (:register-trap #xA044 :no-match refnum :no-match posmode :no-match posoff))
  826. |#
  827. #| Not in ROM
  828. (deftrap _getvrefnum ((filerefnum :signed-integer) (vrefnum (:pointer :signed-integer)))
  829.    (:stack :signed-integer)
  830.    (:stack-trap #x0))
  831. |#
  832.  
  833. (deftrap _pbopenwd ((paramblock (:pointer :wdpbrec)))
  834.    (:d0 :signed-integer)
  835.    (:register-trap #xA260 :a0 paramblock :d0 1))
  836.  
  837.  
  838. (deftrap _pbclosewd ((paramblock (:pointer :wdpbrec)))
  839.    (:d0 :signed-integer)
  840.    (:register-trap #xA260 :a0 paramblock :d0 2))
  841.  
  842. (deftrap _pbhsetvol ((paramblock (:pointer :wdpbrec)))
  843.    (:d0 :signed-integer)
  844.    (:register-trap #xA215 :a0 paramblock))
  845.  
  846. (deftrap _pbhgetvol ((paramblock (:pointer :wdpbrec)))
  847.    (:d0 :signed-integer)
  848.    (:register-trap #xA214 :a0 paramblock))
  849.  
  850. (deftrap _pbcatmove ((paramblock (:pointer :cmovepbrec)))
  851.    (:d0 :signed-integer)
  852.    (:register-trap #xA260 :a0 paramblock :d0 5))
  853.  
  854. (deftrap _pbdircreate ((paramblock (:pointer :hparamblockrec)))
  855.    (:d0 :signed-integer)
  856.    (:register-trap #xA260 :a0 paramblock :d0 6))
  857.  
  858. (deftrap _pbgetwdinfo ((paramblock (:pointer :wdpbrec)))
  859.    (:d0 :signed-integer)
  860.    (:register-trap #xA260 :a0 paramblock :d0 7))
  861.  
  862. (deftrap _pbgetfcbinfo ((paramblock (:pointer :fcbpbrec)))
  863.    (:d0 :signed-integer)
  864.    (:register-trap #xA260 :a0 paramblock :d0 8))
  865.  
  866. (deftrap _pbgetcatinfo ((paramblock (:pointer :cinfopbrec)))
  867.    (:d0 :signed-integer)
  868.    (:register-trap #xA260 :a0 paramblock :d0 9))
  869.  
  870. (deftrap _pbsetcatinfo ((paramblock (:pointer :cinfopbrec)))
  871.    (:d0 :signed-integer)
  872.    (:register-trap #xA260 :a0 paramblock :d0 10))
  873.  
  874. (deftrap _pballoccontig ((paramblock (:pointer :paramblockrec)))
  875.    (:d0 :signed-integer)
  876.    (:register-trap #xA210 :a0 paramblock))
  877.  
  878. (deftrap _pblockrange ((paramblock (:pointer :paramblockrec)))
  879.    (:d0 :signed-integer)
  880.    (:register-trap #xA260 :a0 paramblock :d0 16))
  881.  
  882. (deftrap _pbunlockrange ((paramblock (:pointer :paramblockrec)))
  883.    (:d0 :signed-integer)
  884.    (:register-trap #xA260 :a0 paramblock :d0 17))
  885.  
  886. (deftrap _pbsetvinfo ((paramblock (:pointer :hparamblockrec)))
  887.    (:d0 :signed-integer)
  888.    (:register-trap #xA260 :a0 paramblock :d0 11))
  889.  
  890. (deftrap _pbhgetvinfo ((paramblock (:pointer :hparamblockrec)))
  891.    (:d0 :signed-integer)
  892.    (:register-trap #xA207 :a0 paramblock))
  893.  
  894. (deftrap _pbhopen ((paramblock (:pointer :hparamblockrec)))
  895.    (:d0 :signed-integer)
  896.    (:register-trap #xA200 :a0 paramblock))
  897.  
  898. (deftrap _pbhopenrf ((paramblock (:pointer :hparamblockrec)))
  899.    (:d0 :signed-integer)
  900.    (:register-trap #xA20A :a0 paramblock))
  901.  
  902. (deftrap _pbhopendf ((paramblock (:pointer :hparamblockrec)))
  903.    (:d0 :signed-integer)
  904.    (:register-trap #xA260 :a0 paramblock :d0 26))
  905.  
  906. (deftrap _pbhcreate ((paramblock (:pointer :hparamblockrec)))
  907.    (:d0 :signed-integer)
  908.    (:register-trap #xA208 :a0 paramblock))
  909.  
  910. (deftrap _pbhdelete ((paramblock (:pointer :hparamblockrec)))
  911.    (:d0 :signed-integer)
  912.    (:register-trap #xA209 :a0 paramblock))
  913.  
  914. (deftrap _pbhrename ((paramblock (:pointer :hparamblockrec)))
  915.    (:d0 :signed-integer)
  916.    (:register-trap #xA20B :a0 paramblock))
  917.  
  918. (deftrap _pbhrstflock ((paramblock (:pointer :hparamblockrec)))
  919.    (:d0 :signed-integer)
  920.    (:register-trap #xA242 :a0 paramblock))
  921.  
  922. (deftrap _pbhsetflock ((paramblock (:pointer :hparamblockrec)))
  923.    (:d0 :signed-integer)
  924.    (:register-trap #xA241 :a0 paramblock))
  925.  
  926. (deftrap _pbhgetfinfo ((paramblock (:pointer :hparamblockrec)))
  927.    (:d0 :signed-integer)
  928.    (:register-trap #xA20C :a0 paramblock))
  929.  
  930. (deftrap _pbhsetfinfo ((paramblock (:pointer :hparamblockrec)))
  931.    (:d0 :signed-integer)
  932.    (:register-trap #xA20D :a0 paramblock))
  933.  
  934. (deftrap _pbmakefsspec ((paramblock (:pointer :hparamblockrec)))
  935.    (:d0 :signed-integer)
  936.    (:register-trap #xA260 :a0 paramblock :d0 27))
  937.  
  938. (deftrap _openwd ((paramblock (:pointer :wdpbrec)))
  939.    (:d0 :signed-integer)
  940.    (:register-trap #xA260 :a0 paramblock :d0 1))
  941.  
  942.  
  943. (deftrap _closewd ((paramblock (:pointer :wdpbrec)))
  944.    (:d0 :signed-integer)
  945.    (:register-trap #xA260 :a0 paramblock :d0 2))
  946.  
  947. (deftrap _hsetvol ((paramblock (:pointer :wdpbrec)))
  948.    (:d0 :signed-integer)
  949.    (:register-trap #xA215 :a0 paramblock))
  950.  
  951. (deftrap _hgetvol ((paramblock (:pointer :wdpbrec)))
  952.    (:d0 :signed-integer)
  953.    (:register-trap #xA214 :a0 paramblock))
  954.  
  955. (deftrap _catmove ((paramblock (:pointer :cmovepbrec)))
  956.    (:d0 :signed-integer)
  957.    (:register-trap #xA260 :a0 paramblock :d0 5))
  958.  
  959. (deftrap _dircreate ((paramblock (:pointer :hparamblockrec)))
  960.    (:d0 :signed-integer)
  961.    (:register-trap #xA260 :a0 paramblock :d0 6))
  962.  
  963. (deftrap _getwdinfo ((paramblock (:pointer :wdpbrec)))
  964.    (:d0 :signed-integer)
  965.    (:register-trap #xA260 :a0 paramblock :d0 7))
  966.  
  967. (deftrap _getfcbinfo ((paramblock (:pointer :fcbpbrec)))
  968.    (:d0 :signed-integer)
  969.    (:register-trap #xA260 :a0 paramblock :d0 8))
  970.  
  971. (deftrap _getcatinfo ((paramblock (:pointer :cinfopbrec)))
  972.    (:d0 :signed-integer)
  973.    (:register-trap #xA260 :a0 paramblock :d0 9))
  974.  
  975. (deftrap _setcatinfo ((paramblock (:pointer :cinfopbrec)))
  976.    (:d0 :signed-integer)
  977.    (:register-trap #xA260 :a0 paramblock :d0 10))
  978.  
  979. (deftrap _alloccontig ((paramblock (:pointer :paramblockrec)))
  980.    (:d0 :signed-integer)
  981.    (:register-trap #xA210 :a0 paramblock))
  982.  
  983. (deftrap _lockrange ((paramblock (:pointer :paramblockrec)))
  984.    (:d0 :signed-integer)
  985.    (:register-trap #xA260 :a0 paramblock :d0 16))
  986.  
  987. (deftrap _unlockrange ((paramblock (:pointer :paramblockrec)))
  988.    (:d0 :signed-integer)
  989.    (:register-trap #xA260 :a0 paramblock :d0 17))
  990.  
  991. (deftrap _setvinfo ((paramblock (:pointer :hparamblockrec)))
  992.    (:d0 :signed-integer)
  993.    (:register-trap #xA260 :a0 paramblock :d0 11))
  994.  
  995. (deftrap _hgetvinfo ((paramblock (:pointer :hparamblockrec)))
  996.    (:d0 :signed-integer)
  997.    (:register-trap #xA207 :a0 paramblock))
  998.  
  999. (deftrap _hopen ((paramblock (:pointer :hparamblockrec)))
  1000.    (:d0 :signed-integer)
  1001.    (:register-trap #xA200 :a0 paramblock))
  1002.  
  1003. (deftrap _hopenrf ((paramblock (:pointer :hparamblockrec)))
  1004.    (:d0 :signed-integer)
  1005.    (:register-trap #xA20A :a0 paramblock))
  1006.  
  1007. (deftrap _hopendf ((paramblock (:pointer :hparamblockrec)))
  1008.    (:d0 :signed-integer)
  1009.    (:register-trap #xA260 :a0 paramblock :d0 26))
  1010.  
  1011. (deftrap _hcreate ((paramblock (:pointer :hparamblockrec)))
  1012.    (:d0 :signed-integer)
  1013.    (:register-trap #xA208 :a0 paramblock))
  1014.  
  1015. (deftrap _hdelete ((paramblock (:pointer :hparamblockrec)))
  1016.    (:d0 :signed-integer)
  1017.    (:register-trap #xA209 :a0 paramblock))
  1018.  
  1019. (deftrap _hrename ((paramblock (:pointer :hparamblockrec)))
  1020.    (:d0 :signed-integer)
  1021.    (:register-trap #xA20B :a0 paramblock))
  1022.  
  1023. (deftrap _hrstflock ((paramblock (:pointer :hparamblockrec)))
  1024.    (:d0 :signed-integer)
  1025.    (:register-trap #xA242 :a0 paramblock))
  1026.  
  1027. (deftrap _hsetflock ((paramblock (:pointer :hparamblockrec)))
  1028.    (:d0 :signed-integer)
  1029.    (:register-trap #xA241 :a0 paramblock))
  1030.  
  1031. (deftrap _hgetfinfo ((paramblock (:pointer :hparamblockrec)))
  1032.    (:d0 :signed-integer)
  1033.    (:register-trap #xA20C :a0 paramblock))
  1034.  
  1035. (deftrap _hsetfinfo ((paramblock (:pointer :hparamblockrec)))
  1036.    (:d0 :signed-integer)
  1037.    (:register-trap #xA20D :a0 paramblock))
  1038.  
  1039. (deftrap _makefsspec ((paramblock (:pointer :hparamblockrec)))
  1040.    (:d0 :signed-integer)
  1041.    (:register-trap #xA260 :a0 paramblock :d0 27))
  1042.  
  1043. (deftrap _finitqueue nil
  1044.    nil
  1045.    (:stack-trap #xA016))
  1046.  
  1047. (deftrap _getfsqhdr nil
  1048.    (:no-trap (:pointer :qhdr))
  1049.    (:no-trap (%get-ptr (%int-to-ptr #x0360))))
  1050.  
  1051. (deftrap _getdrvqhdr nil
  1052.    (:no-trap (:pointer :qhdr))
  1053.    (:no-trap (%get-ptr (%int-to-ptr #x0308))))
  1054.  
  1055. (deftrap _getvcbqhdr nil
  1056.    (:no-trap (:pointer :qhdr))
  1057.    (:no-trap (%get-ptr (%int-to-ptr #x0356))))
  1058.  
  1059.  
  1060. #| No 411 description
  1061. (deftrap _hgetvol ((volname (:pointer (:string 255))) (vrefnum (:pointer :signed-integer)) (dirid (:pointer :signed-long)))
  1062.    (nil :signed-integer)
  1063.    (:register-trap #xA214))
  1064. |#
  1065. #| No 411 description
  1066. (deftrap _hsetvol ((volname (:pointer (:string 255))) (vrefnum :signed-integer) (dirid :signed-long))
  1067.    (nil :signed-integer)
  1068.    (:register-trap #xA215))
  1069. |#
  1070. #| No 411 description
  1071. (deftrap _hopen ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (permission :signed-byte) (refnum (:pointer :signed-integer)))
  1072.    (nil :signed-integer)
  1073.    (:register-trap #xA200))
  1074. |#
  1075. #| Not in ROM
  1076. (deftrap _hopendf ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (permission :signed-byte) (refnum (:pointer :signed-integer)))
  1077.    (:stack :signed-integer)
  1078.    (:stack-trap #x0))
  1079. |#
  1080. #| No 411 description
  1081. (deftrap _hopenrf ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (permission :signed-byte) (refnum (:pointer :signed-integer)))
  1082.    (nil :signed-integer)
  1083.    (:register-trap #xA20A))
  1084. |#
  1085. #| Can't match 411 description 
  1086.    Entry:nil 
  1087.    Exit:nil
  1088. (deftrap _alloccontig ((refnum :signed-integer) (count (:pointer :signed-long)))
  1089.    (nil :signed-integer)
  1090.    (:register-trap #xA210 :no-match refnum :no-match count))
  1091. |#
  1092. #| No 411 description
  1093. (deftrap _hcreate ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (creator :ostype) (filetype :ostype))
  1094.    (nil :signed-integer)
  1095.    (:register-trap #xA208))
  1096. |#
  1097. #| Not in ROM
  1098. (deftrap _dircreate ((vrefnum :signed-integer) (parentdirid :signed-long) (directoryname (:string 255)) (createddirid (:pointer :signed-long)))
  1099.    (:stack :signed-integer)
  1100.    (:stack-trap #x0))
  1101. |#
  1102. #| No 411 description
  1103. (deftrap _hdelete ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)))
  1104.    (nil :signed-integer)
  1105.    (:register-trap #xA209))
  1106. |#
  1107. #| Not in ROM
  1108. (deftrap _hgetfinfo ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (fndrinfo (:pointer :finfo)))
  1109.    (:stack :signed-integer)
  1110.    (:stack-trap #x0))
  1111. |#
  1112. #| Not in ROM
  1113. (deftrap _hsetfinfo ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (fndrinfo :finfo))
  1114.    (:stack :signed-integer)
  1115.    (:stack-trap #x0))
  1116. |#
  1117. #| No 411 description
  1118. (deftrap _hsetflock ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)))
  1119.    (nil :signed-integer)
  1120.    (:register-trap #xA241))
  1121. |#
  1122. #| No 411 description
  1123. (deftrap _hrstflock ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)))
  1124.    (nil :signed-integer)
  1125.    (:register-trap #xA242))
  1126. |#
  1127. #| No 411 description
  1128. (deftrap _hrename ((vrefnum :signed-integer) (dirid :signed-long) (oldname (:string 255)) (newname (:string 255)))
  1129.    (nil :signed-integer)
  1130.    (:register-trap #xA20B))
  1131. |#
  1132. #| Not in ROM
  1133. (deftrap _catmove ((vrefnum :signed-integer) (dirid :signed-long) (oldname (:string 255)) (newdirid :signed-long) (newname (:string 255)))
  1134.    (:stack :signed-integer)
  1135.    (:stack-trap #x0))
  1136. |#
  1137. #| Not in ROM
  1138. (deftrap _openwd ((vrefnum :signed-integer) (dirid :signed-long) (procid :signed-long) (wdrefnum (:pointer :signed-integer)))
  1139.    (:stack :signed-integer)
  1140.    (:stack-trap #x0))
  1141. |#
  1142. #| Not in ROM
  1143. (deftrap _closewd ((wdrefnum :signed-integer))
  1144.    (:stack :signed-integer)
  1145.    (:stack-trap #x0))
  1146. |#
  1147. #| Not in ROM
  1148. (deftrap _getwdinfo ((wdrefnum :signed-integer) (vrefnum (:pointer :signed-integer)) (dirid (:pointer :signed-long)) (procid (:pointer :signed-long)))
  1149.    (:stack :signed-integer)
  1150.    (:stack-trap #x0))
  1151. |#
  1152.  
  1153. (deftrap _pbhgetvolparms ((paramblock (:pointer :hparamblockrec)))
  1154.    (:d0 :signed-integer)
  1155.    (:register-trap #xA260 :a0 paramblock :d0 48))
  1156.  
  1157. (deftrap _pbhgetlogininfo ((paramblock (:pointer :hparamblockrec)))
  1158.    (:d0 :signed-integer)
  1159.    (:register-trap #xA260 :a0 paramblock :d0 49))
  1160.  
  1161. (deftrap _pbhgetdiraccess ((paramblock (:pointer :hparamblockrec)))
  1162.    (:d0 :signed-integer)
  1163.    (:register-trap #xA260 :a0 paramblock :d0 50))
  1164.  
  1165. (deftrap _pbhsetdiraccess ((paramblock (:pointer :hparamblockrec)))
  1166.    (:d0 :signed-integer)
  1167.    (:register-trap #xA260 :a0 paramblock :d0 51))
  1168.  
  1169. (deftrap _pbhmapid ((paramblock (:pointer :hparamblockrec)))
  1170.    (:d0 :signed-integer)
  1171.    (:register-trap #xA260 :a0 paramblock :d0 52))
  1172.  
  1173. (deftrap _pbhmapname ((paramblock (:pointer :hparamblockrec)))
  1174.    (:d0 :signed-integer)
  1175.    (:register-trap #xA260 :a0 paramblock :d0 53))
  1176.  
  1177. (deftrap _pbhcopyfile ((paramblock (:pointer :hparamblockrec)))
  1178.    (:d0 :signed-integer)
  1179.    (:register-trap #xA260 :a0 paramblock :d0 54))
  1180.  
  1181. (deftrap _pbhmoverename ((paramblock (:pointer :hparamblockrec)))
  1182.    (:d0 :signed-integer)
  1183.    (:register-trap #xA260 :a0 paramblock :d0 55))
  1184.  
  1185. (deftrap _pbhopendeny ((paramblock (:pointer :hparamblockrec)))
  1186.    (:d0 :signed-integer)
  1187.    (:register-trap #xA260 :a0 paramblock :d0 56))
  1188.  
  1189. (deftrap _pbhopenrfdeny ((paramblock (:pointer :hparamblockrec)))
  1190.    (:d0 :signed-integer)
  1191.    (:register-trap #xA260 :a0 paramblock :d0 57))
  1192.  
  1193. (deftrap _pbexchangefiles ((paramblock (:pointer :hparamblockrec)))
  1194.    (:d0 :signed-integer)
  1195.    (:register-trap #xA260 :a0 paramblock :d0 23))
  1196.  
  1197. (deftrap _pbcreatefileidref ((paramblock (:pointer :hparamblockrec)))
  1198.    (:d0 :signed-integer)
  1199.    (:register-trap #xA260 :a0 paramblock :d0 20))
  1200.  
  1201. (deftrap _pbresolvefileidref ((paramblock (:pointer :hparamblockrec)))
  1202.    (:d0 :signed-integer)
  1203.    (:register-trap #xA260 :a0 paramblock :d0 22))
  1204.  
  1205. (deftrap _pbdeletefileidref ((paramblock (:pointer :hparamblockrec)))
  1206.    (:d0 :signed-integer)
  1207.    (:register-trap #xA260 :a0 paramblock :d0 21))
  1208.  
  1209. (deftrap _pbgetforeignprivs ((paramblock (:pointer :hparamblockrec)))
  1210.    (:d0 :signed-integer)
  1211.    (:register-trap #xA260 :a0 paramblock :d0 96))
  1212.  
  1213. (deftrap _pbsetforeignprivs ((paramblock (:pointer :hparamblockrec)))
  1214.    (:d0 :signed-integer)
  1215.    (:register-trap #xA260 :a0 paramblock :d0 97))
  1216.  
  1217. (deftrap _hgetvolparms ((paramblock (:pointer :hparamblockrec)))
  1218.    (:d0 :signed-integer)
  1219.    (:register-trap #xA260 :a0 paramblock :d0 48))
  1220.  
  1221. (deftrap _hgetlogininfo ((paramblock (:pointer :hparamblockrec)))
  1222.    (:d0 :signed-integer)
  1223.    (:register-trap #xA260 :a0 paramblock :d0 49))
  1224.  
  1225. (deftrap _hgetdiraccess ((paramblock (:pointer :hparamblockrec)))
  1226.    (:d0 :signed-integer)
  1227.    (:register-trap #xA260 :a0 paramblock :d0 50))
  1228.  
  1229. (deftrap _hsetdiraccess ((paramblock (:pointer :hparamblockrec)))
  1230.    (:d0 :signed-integer)
  1231.    (:register-trap #xA260 :a0 paramblock :d0 51))
  1232.  
  1233. (deftrap _hmapid ((paramblock (:pointer :hparamblockrec)))
  1234.    (:d0 :signed-integer)
  1235.    (:register-trap #xA260 :a0 paramblock :d0 52))
  1236.  
  1237. (deftrap _hmapname ((paramblock (:pointer :hparamblockrec)))
  1238.    (:d0 :signed-integer)
  1239.    (:register-trap #xA260 :a0 paramblock :d0 53))
  1240.  
  1241. (deftrap _hcopyfile ((paramblock (:pointer :hparamblockrec)))
  1242.    (:d0 :signed-integer)
  1243.    (:register-trap #xA260 :a0 paramblock :d0 54))
  1244.  
  1245. (deftrap _hmoverename ((paramblock (:pointer :hparamblockrec)))
  1246.    (:d0 :signed-integer)
  1247.    (:register-trap #xA260 :a0 paramblock :d0 55))
  1248.  
  1249. (deftrap _hopendeny ((paramblock (:pointer :hparamblockrec)))
  1250.    (:d0 :signed-integer)
  1251.    (:register-trap #xA260 :a0 paramblock :d0 56))
  1252.  
  1253. (deftrap _hopenrfdeny ((paramblock (:pointer :hparamblockrec)))
  1254.    (:d0 :signed-integer)
  1255.    (:register-trap #xA260 :a0 paramblock :d0 57))
  1256.  
  1257. (deftrap _exchangefiles ((paramblock (:pointer :hparamblockrec)))
  1258.    (:d0 :signed-integer)
  1259.    (:register-trap #xA260 :a0 paramblock :d0 23))
  1260.  
  1261. (deftrap _createfileidref ((paramblock (:pointer :hparamblockrec)))
  1262.    (:d0 :signed-integer)
  1263.    (:register-trap #xA260 :a0 paramblock :d0 20))
  1264.  
  1265. (deftrap _resolvefileidref ((paramblock (:pointer :hparamblockrec)))
  1266.    (:d0 :signed-integer)
  1267.    (:register-trap #xA260 :a0 paramblock :d0 22))
  1268.  
  1269. (deftrap _deletefileidref ((paramblock (:pointer :hparamblockrec)))
  1270.    (:d0 :signed-integer)
  1271.    (:register-trap #xA260 :a0 paramblock :d0 21))
  1272.  
  1273. (deftrap _getforeignprivs ((paramblock (:pointer :hparamblockrec)))
  1274.    (:d0 :signed-integer)
  1275.    (:register-trap #xA260 :a0 paramblock :d0 96))
  1276.  
  1277. (deftrap _setforeignprivs ((paramblock (:pointer :hparamblockrec)))
  1278.    (:d0 :signed-integer)
  1279.    (:register-trap #xA260 :a0 paramblock :d0 97))
  1280.  
  1281. ;   Desktop Manager  
  1282.  
  1283. (deftrap _pbdtgetpath ((paramblock (:pointer :dtpbrec)))
  1284.    (:d0 :signed-integer)
  1285.    (:register-trap #xA260 :a0 paramblock :d0 32))
  1286.  
  1287. (deftrap _pbdtclosedown ((paramblock (:pointer :dtpbrec)))
  1288.    (:d0 :signed-integer)
  1289.    (:register-trap #xA260 :a0 paramblock :d0 33))
  1290.  
  1291. (deftrap _pbdtaddicon ((paramblock (:pointer :dtpbrec)))
  1292.    (:d0 :signed-integer)
  1293.    (:register-trap #xA260 :a0 paramblock :d0 34))
  1294.  
  1295. (deftrap _pbdtgeticon ((paramblock (:pointer :dtpbrec)))
  1296.    (:d0 :signed-integer)
  1297.    (:register-trap #xA260 :a0 paramblock :d0 35))
  1298.  
  1299. (deftrap _pbdtgeticoninfo ((paramblock (:pointer :dtpbrec)))
  1300.    (:d0 :signed-integer)
  1301.    (:register-trap #xA260 :a0 paramblock :d0 36))
  1302.  
  1303. (deftrap _pbdtaddappl ((paramblock (:pointer :dtpbrec)))
  1304.    (:d0 :signed-integer)
  1305.    (:register-trap #xA260 :a0 paramblock :d0 37))
  1306.  
  1307. (deftrap _pbdtremoveappl ((paramblock (:pointer :dtpbrec)))
  1308.    (:d0 :signed-integer)
  1309.    (:register-trap #xA260 :a0 paramblock :d0 38))
  1310.  
  1311. (deftrap _pbdtgetappl ((paramblock (:pointer :dtpbrec)))
  1312.    (:d0 :signed-integer)
  1313.    (:register-trap #xA260 :a0 paramblock :d0 39))
  1314.  
  1315. (deftrap _pbdtsetcomment ((paramblock (:pointer :dtpbrec)))
  1316.    (:d0 :signed-integer)
  1317.    (:register-trap #xA260 :a0 paramblock :d0 40))
  1318.  
  1319. (deftrap _pbdtremovecomment ((paramblock (:pointer :dtpbrec)))
  1320.    (:d0 :signed-integer)
  1321.    (:register-trap #xA260 :a0 paramblock :d0 41))
  1322.  
  1323. (deftrap _pbdtgetcomment ((paramblock (:pointer :dtpbrec)))
  1324.    (:d0 :signed-integer)
  1325.    (:register-trap #xA260 :a0 paramblock :d0 42))
  1326.  
  1327. (deftrap _pbdtflush ((paramblock (:pointer :dtpbrec)))
  1328.    (:d0 :signed-integer)
  1329.    (:register-trap #xA260 :a0 paramblock :d0 43))
  1330.  
  1331. (deftrap _pbdtreset ((paramblock (:pointer :dtpbrec)))
  1332.    (:d0 :signed-integer)
  1333.    (:register-trap #xA260 :a0 paramblock :d0 44))
  1334.  
  1335. (deftrap _pbdtgetinfo ((paramblock (:pointer :dtpbrec)))
  1336.    (:d0 :signed-integer)
  1337.    (:register-trap #xA260 :a0 paramblock :d0 45))
  1338.  
  1339. (deftrap _pbdtopeninform ((paramblock (:pointer :dtpbrec)))
  1340.    (:d0 :signed-integer)
  1341.    (:register-trap #xA060 :a0 paramblock :d0 46))
  1342.  
  1343. (deftrap _pbdtdelete ((paramblock (:pointer :dtpbrec)))
  1344.    (:d0 :signed-integer)
  1345.    (:register-trap #xA060 :a0 paramblock :d0 47))
  1346.  
  1347. (deftrap _pbgetvolmountinfosize ((paramblock (:pointer :paramblockrec)))
  1348.    (:d0 :signed-integer)
  1349.    (:register-trap #xA260 :a0 paramblock :d0 63))
  1350.  
  1351. (deftrap _pbgetvolmountinfo ((paramblock (:pointer :paramblockrec)))
  1352.    (:d0 :signed-integer)
  1353.    (:register-trap #xA260 :a0 paramblock :d0 64))
  1354.  
  1355. (deftrap _pbvolumemount ((paramblock (:pointer :paramblockrec)))
  1356.    (:d0 :signed-integer)
  1357.    (:register-trap #xA260 :a0 paramblock :d0 65))
  1358.  
  1359. (deftrap _dtgetpath ((paramblock (:pointer :dtpbrec)))
  1360.    (:d0 :signed-integer)
  1361.    (:register-trap #xA260 :a0 paramblock :d0 32))
  1362.  
  1363. (deftrap _dtclosedown ((paramblock (:pointer :dtpbrec)))
  1364.    (:d0 :signed-integer)
  1365.    (:register-trap #xA260 :a0 paramblock :d0 33))
  1366.  
  1367. (deftrap _dtaddicon ((paramblock (:pointer :dtpbrec)))
  1368.    (:d0 :signed-integer)
  1369.    (:register-trap #xA260 :a0 paramblock :d0 34))
  1370.  
  1371. (deftrap _dtgeticon ((paramblock (:pointer :dtpbrec)))
  1372.    (:d0 :signed-integer)
  1373.    (:register-trap #xA260 :a0 paramblock :d0 35))
  1374.  
  1375. (deftrap _dtgeticoninfo ((paramblock (:pointer :dtpbrec)))
  1376.    (:d0 :signed-integer)
  1377.    (:register-trap #xA260 :a0 paramblock :d0 36))
  1378.  
  1379. (deftrap _dtaddappl ((paramblock (:pointer :dtpbrec)))
  1380.    (:d0 :signed-integer)
  1381.    (:register-trap #xA260 :a0 paramblock :d0 37))
  1382.  
  1383. (deftrap _dtremoveappl ((paramblock (:pointer :dtpbrec)))
  1384.    (:d0 :signed-integer)
  1385.    (:register-trap #xA260 :a0 paramblock :d0 38))
  1386.  
  1387. (deftrap _dtgetappl ((paramblock (:pointer :dtpbrec)))
  1388.    (:d0 :signed-integer)
  1389.    (:register-trap #xA260 :a0 paramblock :d0 39))
  1390.  
  1391. (deftrap _dtsetcomment ((paramblock (:pointer :dtpbrec)))
  1392.    (:d0 :signed-integer)
  1393.    (:register-trap #xA260 :a0 paramblock :d0 40))
  1394.  
  1395. (deftrap _dtremovecomment ((paramblock (:pointer :dtpbrec)))
  1396.    (:d0 :signed-integer)
  1397.    (:register-trap #xA260 :a0 paramblock :d0 41))
  1398.  
  1399. (deftrap _dtgetcomment ((paramblock (:pointer :dtpbrec)))
  1400.    (:d0 :signed-integer)
  1401.    (:register-trap #xA260 :a0 paramblock :d0 42))
  1402.  
  1403. (deftrap _dtflush ((paramblock (:pointer :dtpbrec)))
  1404.    (:d0 :signed-integer)
  1405.    (:register-trap #xA260 :a0 paramblock :d0 43))
  1406.  
  1407. (deftrap _dtreset ((paramblock (:pointer :dtpbrec)))
  1408.    (:d0 :signed-integer)
  1409.    (:register-trap #xA260 :a0 paramblock :d0 44))
  1410.  
  1411. (deftrap _dtgetinfo ((paramblock (:pointer :dtpbrec)))
  1412.    (:d0 :signed-integer)
  1413.    (:register-trap #xA260 :a0 paramblock :d0 45))
  1414.  
  1415. (deftrap _dtopeninform ((paramblock (:pointer :dtpbrec)))
  1416.    (:d0 :signed-integer)
  1417.    (:register-trap #xA060 :a0 paramblock :d0 46))
  1418.  
  1419. (deftrap _dtdelete ((paramblock (:pointer :dtpbrec)))
  1420.    (:d0 :signed-integer)
  1421.    (:register-trap #xA060 :a0 paramblock :d0 47))
  1422.  
  1423. (deftrap _getvolmountinfosize ((paramblock (:pointer :paramblockrec)))
  1424.    (:d0 :signed-integer)
  1425.    (:register-trap #xA260 :a0 paramblock :d0 63))
  1426.  
  1427. (deftrap _getvolmountinfo ((paramblock (:pointer :paramblockrec)))
  1428.    (:d0 :signed-integer)
  1429.    (:register-trap #xA260 :a0 paramblock :d0 64))
  1430.  
  1431. (deftrap _volumemount ((paramblock (:pointer :paramblockrec)))
  1432.    (:d0 :signed-integer)
  1433.    (:register-trap #xA260 :a0 paramblock :d0 65))
  1434.  
  1435.  
  1436. ;   FSSpec Glue  
  1437.  
  1438. (deftrap _fsmakefsspec ((vrefnum :signed-integer) (dirid :signed-long) (filename (:string 255)) (spec (:pointer :fsspec)))
  1439.    (:stack :signed-integer)
  1440.    (:stack-trap #xAA52 :d0 1 vrefnum dirid filename spec))
  1441.  
  1442. (deftrap _fspopendf ((spec :fsspec) (permission :signed-byte) (refnum (:pointer :signed-integer)))
  1443.    (:stack :signed-integer)
  1444.    (:stack-trap #xAA52 :d0 2 spec permission refnum))
  1445.  
  1446. (deftrap _fspopenrf ((spec :fsspec) (permission :signed-byte) (refnum (:pointer :signed-integer)))
  1447.    (:stack :signed-integer)
  1448.    (:stack-trap #xAA52 :d0 3 spec permission refnum))
  1449.  
  1450. (deftrap _fspcreate ((spec :fsspec) (creator :ostype) (filetype :ostype) (scripttag :signed-integer))
  1451.    (:stack :signed-integer)
  1452.    (:stack-trap #xAA52 :d0 4 spec creator filetype scripttag))
  1453.  
  1454. (deftrap _fspdircreate ((spec :fsspec) (scripttag :signed-integer) (createddirid (:pointer :signed-long)))
  1455.    (:stack :signed-integer)
  1456.    (:stack-trap #xAA52 :d0 5 spec scripttag createddirid))
  1457.  
  1458. (deftrap _fspdelete ((spec :fsspec))
  1459.    (:stack :signed-integer)
  1460.    (:stack-trap #xAA52 :d0 6 spec))
  1461.  
  1462. (deftrap _fspgetfinfo ((spec :fsspec) (fndrinfo (:pointer :finfo)))
  1463.    (:stack :signed-integer)
  1464.    (:stack-trap #xAA52 :d0 7 spec fndrinfo))
  1465.  
  1466. (deftrap _fspsetfinfo ((spec :fsspec) (fndrinfo :finfo))
  1467.    (:stack :signed-integer)
  1468.    (:stack-trap #xAA52 :d0 8 spec fndrinfo))
  1469.  
  1470. (deftrap _fspsetflock ((spec :fsspec))
  1471.    (:stack :signed-integer)
  1472.    (:stack-trap #xAA52 :d0 9 spec))
  1473.  
  1474. (deftrap _fsprstflock ((spec :fsspec))
  1475.    (:stack :signed-integer)
  1476.    (:stack-trap #xAA52 :d0 10 spec))
  1477.  
  1478. (deftrap _fsprename ((spec :fsspec) (newname (:string 255)))
  1479.    (:stack :signed-integer)
  1480.    (:stack-trap #xAA52 :d0 11 spec newname))
  1481.  
  1482. (deftrap _fspcatmove ((source :fsspec) (dest :fsspec))
  1483.    (:stack :signed-integer)
  1484.    (:stack-trap #xAA52 :d0 12 source dest))
  1485.  
  1486. (deftrap _fspexchangefiles ((source :fsspec) (dest :fsspec))
  1487.    (:stack :signed-integer)
  1488.    (:stack-trap #xAA52 :d0 15 source dest))
  1489.  
  1490. ; $ENDC                         ;  UsingFiles 
  1491.  
  1492. ; $IFC NOT UsingIncludes
  1493.  
  1494. ; $ENDC
  1495.  
  1496.  
  1497. (export '($applesharemediatype $dirinfo $hfileinfo $ktwowayencryptpassword
  1498.           $kencryptpassword $kpassword $knouserauthentication $finalstage
  1499.           $betastage $alphastage $developstage $fsunixpriv $ksmall8biticonsize
  1500.           $ksmall4biticonsize $ksmalliconsize $klarge8biticonsize
  1501.           $klarge4biticonsize $klargeiconsize $ksmall8biticon $ksmall4biticon
  1502.           $ksmallicon $klarge8biticon $klarge4biticon $klargeicon
  1503.           $bhasblankaccessprivileges $bhasbtreemgr $bhasfileids $bhascatsearch
  1504.           $bhasusergrouplist $bhaspersonalaccessprivileges $bhasfolderlock
  1505.           $bhasshortname $bhasdesktopmgr $bhasmoverename $bhascopyfile
  1506.           $bhasopendeny $bhasextfsvol $bnosysdir $baccesscntl $bnobootblks
  1507.           $bnodeskitems $bnoswitchto $btrshoffline $bnolclsync $bnovnedit
  1508.           $bnominifndr $blocalwlist $blimitfcbs $fssbdrparid $fssbdrfndrinfo
  1509.           $fssbdrbkdat $fssbdrmddat $fssbdrcrdat $fssbdrnmfls $fssbdrusrwds
  1510.           $fssbnegate $fssbflparid $fssbflxfndrinfo $fssbflbkdat $fssbflmddat
  1511.           $fssbflcrdat $fssbflrpylen $fssbflrlglen $fssbflpylen $fssbfllglen
  1512.           $fssbflfndrinfo $fssbflattrib $fssbfullname $fssbpartialname
  1513.           $fsrtdirid $fsrtparid $iodirmask $iodirflg $rdverify $fsfrommark
  1514.           $fsfromleof $fsfromstart $fsrdwrshperm $fdisk $fsrdwrperm $fdesktop
  1515.           $fswrperm $ftrash $finvisible $fsrdperm $fhasbundle $fscurperm
  1516.           $fondesk $fsatmark))
  1517. (provide-interface 'FILES)